package com.cloud.zuul.service;

import com.cloud.zuul.entity.UserEntity;
import com.lwj.framework.rest.PageEntity;

import java.util.Collection;
import java.util.List;

public interface UserService {

	/**
	 * 新增
	 *
	 */
	public <T extends UserEntity> void insert(T item) throws Exception;

	/**
	 * 新增
	 *
	 * @param list
	 */
	public <T extends UserEntity> void insert(Collection<T> list) throws Exception;

	/**
	 * 更新
	 *
	 */
	public <T extends UserEntity> void update(T item) throws Exception;

	/**
	 * 更新
	 *
	 */
	public <T extends UserEntity> void update(Collection<T> list) throws Exception;

	/**
	 * 物理删除
	 *
	 */
	public <T extends UserEntity> void delete(T item) throws Exception;

	/**
	 * 物理删除
	 *
	 */
	public <T extends UserEntity> void delete(Collection<T> list) throws Exception;

	/**
	 * 查询
	 *
	 * @param item
	 * @return
	 */
	public <T extends UserEntity> List<UserEntity> query(T item);

	/**
	 * 分页查询
	 *
	 * @return
	 */
	public <T extends UserEntity> PageEntity<List<UserEntity>> queryPage(PageEntity<T> page);

}
